home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1995 November / macformat-030.iso / Shareware City / Developers / FANTASM V3.16 unreg / Readme files / latest info 290795 < prev    next >
Encoding:
Text File  |  1995-07-29  |  4.9 KB  |  161 lines  |  [TEXT/R*ch]

  1.  
  2. General Info.
  3. ------------
  4.  
  5. 1.
  6.  
  7. There appears to be a bug in Build. Occasionally Build will not recognise
  8. global include files defined with the /G switch.
  9. /G my_file_1
  10. /G my_file_2
  11. /G my_file_3
  12.  
  13. Sometimes build will miss one of these lines, in this case it could globally include
  14. my_file_1 and my_file_3, but skip my_file_2! We appologise for this.
  15.  
  16. The work around is to include a blank line between each global include 
  17. definition line:
  18.  
  19. /G my_file_1
  20.  
  21. /G my_file_2
  22.  
  23. /G my_file_3
  24.  
  25. etc
  26.  
  27.                                       -x-
  28.                             
  29. 2. 
  30. Never start a label name with a valid register name - eg:
  31.  
  32. d3_lab or a7_fred.
  33.  
  34. Fantasm tries to be clever when assembling - when it thinks it has enough information
  35. it will assemble the line, so the line
  36.     BSR    d3_lab
  37. Would erroneously be assembled as 
  38.     BSR    d3
  39.     
  40. Be careful of this, although if you do make this mistake it will be fairly
  41. obvious what the problem is!
  42.  
  43.  
  44.                                    -x-
  45. Revisions of V3.xx
  46.  
  47. 240595 - V3.10.
  48.  
  49. 1. A new switch has been added that allows you to set the creator type from
  50. the Build control file. /C "xxxx" will set the creator to the four character
  51. string in the quotes - for example /c "cath" will set the creator type to cath.
  52. The string is case sensitive so CATH is different to cath. This is extremely 
  53. handy as it allows you to define your own icons for your apps without having to 
  54. change the creator with resedit to match the bundle. 
  55.  
  56. 2. The famous cursor "bug" has been fixed. Fantasm now has a nice rainbow arrow
  57. that should cure the "Why is the cursor a watch when I switch back into Fantasm?"
  58. syndrome. If you do not like the rainbow arrow use resedit to change it. You should not
  59. change any of the other cursors.
  60.  
  61. 3. Fantasm now sets the the "accept suspend" bit in the size resource, so
  62. your app can tell if it is going into the background, or coming into the
  63. forground. Here is sample "events" code that will set a bit in a global variable
  64. depending on whether the program is in the foreground or background:
  65. ***EVENTS IS CALLED FROM THE MAIN LOOP
  66. EVENTS:    DC.W    _SYSTEMTASK    LET THE MAC GET AN EYE IN
  67. NO_EDITOR:    CLR.B    -(SP)    EVENTS RETURNS A BYTE
  68.     MOVE.W    #$FFFF,-(SP)    LOOK FOR ANY EVENT
  69.     PEA    SEVENTREC(PC),-(SP)    EVENT BUFFER
  70.     DC.W    _GETNEXTEVENT    GET EVENT, AND ALLOW SWITCHING ETC
  71.     MOVE.B    (SP)+,D0    THE RESULT
  72.     TST.B    D0
  73.     BEQ.S    mouse_moved    NOTHING HAPPENED
  74. **1ST WORD OF SEVENTREC=EVENT
  75.     LEA    SEVENTREC(PC),A0
  76.     MOVE.W    (A0),D0
  77.  
  78.     CMPI.W    #1,D0
  79.     BNE.S    NOT_MOUSE    *EVENT=1=MOUSE
  80.     BSR    DO_MOUSE    your mouse routine
  81.     RTS
  82. NOT_MOUSE:    CMPI.W    #3,D0
  83.     BNE.S    NOT_KEY    *EVENT=3=KEY DOWN
  84.     BSR.S    KEYDOWN    your key routine
  85.     RTS
  86. NOT_KEY:    CMPI.W    #5,D0
  87.     BNE.S    NOT_KEY_OTHER
  88.     BSR.S    KEYDOWN    *EVENT=5=AUTOKEY - your key routine
  89.     RTS
  90. NOT_KEY_OTHER:    CMPI.W    #6,D0
  91.     BNE.S    NOT_UPDATE
  92.     BSR    UPDATE    *EVENT=6=your update routine
  93.     MOVEQ    #0,D0    *RETURN A 0 IN D0
  94.     RTS
  95. NOT_UPDATE:    CMPI.W    #8,D0
  96.     BNE.S    not_activate
  97.     BSR    ACTIVATE    *your ACTIVATE routine
  98.     moveq    #0,d0
  99.     rts
  100. not_activate:    cmpi.w    #15,d0    osevent (Need accept/ suspend event bit in memory rsrc
  101.     bne.s    not_OS        not an os message
  102.     move.l    2(a0),d0    message in upper byte
  103.     swap    d0
  104.     lsr.w    #8,d0
  105.     andi.w    #$ff,d0    now masked off in lower byte
  106.     cmpi.b    #1,d0    suspendresume event?
  107.     bne.s    not_OS    no
  108.     swap    d0    get low byte back
  109.     andi.w    #1,d0    **Not strictly necessary
  110.     move.w    d0,in_foreground(a5)    1 if in foreground
  111. not_OS:    
  112. END_EVENTS:    MOVEQ    #0,D0    return zero in d0 to indicate no worries
  113.     RTS
  114.  
  115. **This routine is called everytime you move the mouse. Can be used to set
  116. **the cursor to a beam or anything else by checking the mouse coords 
  117. mouse_moved:    tst.w    in_foreground(a5)
  118.     bne.s    in_front    in_foreground is true
  119.     clr.l    d0    we are in the background so don't change cursor
  120.     rts
  121. in_front:    MOVE.L    ARROW_CURS_H(A5),-(SP)    get handle to cursor (from a5 global)
  122.     DC.W    _SETCCURSOR    change the cursor to an arrow if we are foreground
  123.     rts
  124.     dc.b    "Events  "    Macsbug label
  125.     even
  126. seventrec:    ds.b    20    buffer for events record
  127.  
  128. Latest info 010795
  129. -------------------
  130.  
  131. V3.13 - changes made as defined in the front of the user manual.
  132.  
  133. It has been reported that on some machines (where the disk is "stacked" possibly), 
  134. Build does not initially spot changes made to source files until a change is made
  135. to one of the global include files. The give away is when you build a project, and 
  136. Fantasm does not assemble any of the source files, when you know that either the source
  137. file has been edited, or the object file does not exist - the result is you get
  138. "Can't find xxx.o".
  139.  
  140. If this is the case on your machine we suggest you simply add your name and date to 
  141. one of the global include files and the Build Control File, then rebuild and 
  142. all should work fine. This problem has only been reported by one user.
  143.  
  144. V3.14 - internal release only.
  145.  
  146. 150795.
  147. -------
  148.  
  149. V3.15
  150. A new video library is supplied as the old one did not work on LCIII's - this one
  151. has been tested on LCII, LCIII, LC475 and PPC 7100.
  152.  
  153. 170795
  154. ------
  155.  
  156. V3.16 - Removed some old 68000 code and replaced with 020 code, increasing speed.
  157.         DCOFF directive introduced.
  158.         
  159.  
  160.  
  161.